TO DO LIST

- Algorithm that calculate target (forced) values automatically when switching, based on source (original) values

- 1st TRY A GENERAL GS RESET on first lines of ModdedSetGsCrt first 
 - Save MIPS registers context
 - Call sceGsResetGraph(0) in order to clear VsysnVCallback function previous setted
 - Restore MIPS registers context

- 2nd. try
 - create a int handler func that returns -1
 - register it with setGsSyncVCallback

- VSYNC
    - CSR (r/w): system status 0x120001000
        VSINT
        FIELD
        NFIELD

- PUT DVD MODES (NTSC, 480, DVD PAL)...
        
    - Set a *Data Address Read Breakpoint* for FFMD
    - Incorportate it into DisplayHandler, together with existant features, in order to return 0 instead of always 1 when at progressive mode
    - checking the Original_Interlace value and some timer accumulator into DisplayHandler routine for this
        could be using noop, or BP Demo Harmness code, or sce timer functions
    - Use examples on chapter #13 from TX79 document to make the task easier

- Normal fine-tunnig
  - Relative offset of X and Y coordinates, using left analog stick to do it

- Advanced fine-tunning
- - Relative offset of DW/DH/MAGH/MAGV fields, using right analog stick to do it

- File/load /parse /save on mc0

- Download Persona FES
   Extract ELF from ISO
   Open it on PS2DIS/IDA PRO
   Found function patched by ps2force480p
   Compare before and after
   Discover the method for patch INTC_VBLAK_S handler

   - Google for "PCSX2 Debugging site:pcsx2.net"

- After launch games from HDL, they go to BSOD on vast majority of them, with no gamepad response as well
   - VSYNC issue? How solve this?
- Why 1080p@30Hz instead of 1080i@60Hz?

- Matrix Infity BIOS
    - Dump to mass when VGA mode is enabled
    - Open it on PS2DIS / IDA PRO
     - Discover moddedsetgscr/displayhander like functions
    - Dump to mass when VGA mode is not enabled
    - Compare them
    - Look for bpc, eret, cop0 MIPS instructions on it

- Put DISPLAYx fields into a matrix in order to discard my Excel Worksheet

- Better font -> Use fontm

- Background -> Use demos to help on this task: cube, demo2a (display a bmp), or teapot (z buffer)

- Blaze VGA # 1 Patch
	- (MAYBE ONLY THIS BE ENOUGH!) CD READY func to be always true 
		void waitCdReady()
		{
			// Block until the dvdrom is ready to take commands
			cdDiskReady(0);
		
			// Spin up the cd/dvd
			cdStandby();
		}
	- (MAYBE IT IS ALREADY DONE) Runloader elf func to call mc0:/BOOT/HDLOADER.ELF instead of cd/dvd, or even PS2 Browser in order to launch FMCB
		scr_printf("\nExiting to PS2 Browser...\n");
		delay(5);
		__asm__ __volatile__(
		".set noreorder\n\t"
		"li $3, 0x04\n\t"
		"syscall\n\t"
		"nop\n\t"
		".set reorder\n\t"
		);
- Blaze VGA # 2 Patch
     - Make a dump app that displays
        - syscall vector table address
        - syscall #2 (SetGsCrt) vector address/vector contents
        - this setGsCrt fist 0x50 opcodes
        - kernel handler first 0x50 opcodes
        - make a ISO of all these stuff
        - dispatch to some psx-scener to run it from Blaze VGA, take some great photos and send to me.